package com.ict.web.domain;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 专家库信息---expert_information_sheet
 * 
 * @author ruoyi
 * @date 2022-02-23
 */
@Data
@TableName("yzq_expert_information_sheet")
public class ExpertInformationSheet implements Serializable {
    private static final long serialVersionUID = 1L;

    public static final String DELETE_STATUS_NORMAL = "0";
    public static final String DELETE_STATUS_UNNORMAL = "1";

    @ApiModelProperty(value = "专家id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @TableId(type = IdType.ASSIGN_ID)
    private Long expertId;

    @ApiModelProperty(value = "用户id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long userId;

    @ApiModelProperty(value = "专家姓名")
    private String expertName;

    @ApiModelProperty(value = "性别{0：男 1：女}")
    private String sex;

    @ApiModelProperty(value = "政治面貌")
    private String politicalOutlook;

    @ApiModelProperty(value = "身份证号码")
    private String idNumber;

    @ApiModelProperty(value = "手机号码")
    private String phoneNumber;

    @ApiModelProperty(value = "电子邮箱")
    private String email;

    @ApiModelProperty(value = "联系地址")
    private String contactAddress;

    @ApiModelProperty(value = "毕业学院")
    private String graduateCollege;

    @ApiModelProperty(value = "专业")
    private String major;

    @ApiModelProperty(value = "学历")
    private String education;

    @ApiModelProperty(value = "毕业时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date graduationTime;

    @ApiModelProperty(value = "工作单位")
    private String workUnit;

    @ApiModelProperty(value = "职务")
    private String post;

    @ApiModelProperty(value = "擅长领域")
    private String areasOfExpertise;

    @ApiModelProperty(value = "工作年限")
    private String workingYears;

    @ApiModelProperty(value = "删除状态（0：正常 1：删除）")
    private String delFlag;

    //以下都是文件类型
    @ApiModelProperty(value = "最高学历证书")
    private String haCertificateFile;

    @ApiModelProperty(value = "工作单位意见")
    private String workUnitOpinionsFile;

    @ApiModelProperty(value = "身份证")
    private String idCardFile;

    @ApiModelProperty(value = "个人照片")
    private String personalPhotosFile;

    @ApiModelProperty(value = "年龄")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Integer age;

    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty(value = "修改时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    @ApiModelProperty(value = "机构id")
    private Long ormId;
}